package cn.ad.server.web.spring.model.gdt;

import cn.ad.server.web.spring.model.BidAdRequest;
import com.baidu.bjf.remoting.protobuf.FieldType;
import com.baidu.bjf.remoting.protobuf.annotation.Protobuf;

import java.util.List;

public class GDTBidRequest extends BidAdRequest {

	@Protobuf(fieldType = FieldType.STRING, required = true)
	private String id;

	@Protobuf(fieldType = FieldType.BOOL)
	private boolean is_ping;

	@Protobuf(fieldType = FieldType.BOOL)
	private boolean is_test;

	@Protobuf(fieldType = FieldType.OBJECT)
	private List<GDTImpression> impressions;

	@Protobuf(fieldType = FieldType.OBJECT)
	private GDTDevice device;

	@Protobuf(fieldType = FieldType.STRING)
	private String ip;

	// 地域码，取值见《广点通地域码》
	@Protobuf(fieldType = FieldType.INT32)
	private int area_code;

	@Protobuf(fieldType = FieldType.OBJECT)
	private GDTUser user;

	@Protobuf(fieldType = FieldType.OBJECT)
	private GDTGeo geo;

	@Protobuf(fieldType = FieldType.OBJECT)
	private GDTApp app;

	@Protobuf(fieldType = FieldType.UINT64)
	private long boss_qq;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public boolean isIs_ping() {
		return is_ping;
	}

	public void setIs_ping(boolean is_ping) {
		this.is_ping = is_ping;
	}

	public boolean isIs_test() {
		return is_test;
	}

	public void setIs_test(boolean is_test) {
		this.is_test = is_test;
	}

	public boolean is_ping() {
		return is_ping;
	}

	public boolean is_test() {
		return is_test;
	}

	public List<GDTImpression> getImpressions() {
		return impressions;
	}

	public void setImpressions(List<GDTImpression> impressions) {
		this.impressions = impressions;
	}

	public GDTDevice getDevice() {
		return device;
	}

	public void setDevice(GDTDevice device) {
		this.device = device;
	}

	public String getIp() {
		return ip;
	}

	public void setIp(String ip) {
		this.ip = ip;
	}

	public int getArea_code() {
		return area_code;
	}

	public void setArea_code(int area_code) {
		this.area_code = area_code;
	}

	public GDTUser getUser() {
		return user;
	}

	public void setUser(GDTUser user) {
		this.user = user;
	}

	public GDTGeo getGeo() {
		return geo;
	}

	public void setGeo(GDTGeo geo) {
		this.geo = geo;
	}

	public GDTApp getApp() {
		return app;
	}

	public void setApp(GDTApp app) {
		this.app = app;
	}

	public long getBoss_qq() {
		return boss_qq;
	}

	public void setBoss_qq(long boss_qq) {
		this.boss_qq = boss_qq;
	}

}
